#C 语言标准库头文件 limits.h
这个头文件提供 整数范围限制 的相关功能,例如 int
的位宽度、最小值、最大值等。
#示例
#include <stdio.h>
#include <limits.h>
int main(void) {
printf("CHAR_BIT: %d\n", CHAR_BIT);
printf("SCHAR_MIN: %d\n", SCHAR_MIN);
printf("SCHAR_MAX: %d\n", SCHAR_MAX);
printf("UCHAR_MAX: %u\n", UCHAR_MAX);
printf("INT_MIN: %d\n", INT_MIN);
printf("INT_MAX: %d\n", INT_MAX);
printf("UINT_MAX: %u\n", UINT_MAX);
printf("LONG_MIN: %ld\n", LONG_MIN);
printf("LONG_MAX: %ld\n", LONG_MAX);
printf("ULONG_MAX: %lu\n", ULONG_MAX);
return 0;
}
运行结果:
CHAR_BIT: 8 SCHAR_MIN: -128 SCHAR_MAX: 127 UCHAR_MAX: 255 INT_MIN: -2147483648 INT_MAX: 2147483647 UINT_MAX: 4294967295 LONG_MIN: -9223372036854775808 LONG_MAX: 9223372036854775807 ULONG_MAX: 18446744073709551615
#宏
宏 | 标准 | 说明 |
---|---|---|
BOOL_WIDTH | C23 | _Bool 的位宽度 |
BOOL_MAX | C29 | _Bool 的最大值 |
CHAR_BIT | C89 | 字节的位宽度,通常是 8 |
MB_LEN_MAX | C89 | 多字节字符的最大字节数 |
CHAR_WIDTH | C23 | char 的位宽度,同 CHAR_BIT |
CHAR_MIN | C89 | char 的最小值 |
CHAR_MAX | C89 | char 的最大值 |
SCHAR_WIDTH | C23 | signed char 的位宽度 |
SHRT_WIDTH | C23 | short int 的位宽度 |
INT_WIDTH | C23 | int 的位宽度 |
LONG_WIDTH | C23 | long 的位宽度 |
LLONG_WIDTH | C23 | long long 的位宽度 |
SCHAR_MIN | C89 | singed char 的最小值 |
SHRT_MIN | C89 | short 的最小值 |
INT_MIN | C89 | int 的最小值 |
LONG_MIN | C89 | long 的最小值 |
LLONG_MIN | C99 | long long 的最小值 |
SCHAR_MAX | C89 | singed char 的最大值 |
SHRT_MAX | C89 | short 的最大值 |
INT_MAX | C89 | int 的最大值 |
LONG_MAX | C89 | long 的最大值 |
LLONG_MAX | C99 | long long 的最大值 |
UCHAR_WIDTH | C23 | unsigned char 的位宽度 |
USHRT_WIDTH | C23 | unsigned short 的位宽度 |
UINT_WIDTH | C23 | unsigned int 的位宽度 |
ULONG_WIDTH | C23 | unsigned long 的位宽度 |
ULLONG_WIDTH | C23 | unsigned long long 的位宽 |
UCHAR_MAX | C89 | unsigned char 的位最大值 |
USHRT_MAX | C89 | unsigned short 的位最大值 |
UINT_MAX | C89 | unsigned int 的位最大值 |
ULONG_MAX | C89 | unsigned long 的位最大值 |
ULLONG_MAX | C99 | unsigned long long 的位最大值 |